1. Field of the Invention
The present invention relates generally to a system of loading and dumping data, and more particularly, to a data loading and dumping system of loading and dumping a data flow program into and from a program memory in a data flow type information processor in which an instruction can be executed immediately after data which are objects of an operation are collected.
2. Description of the Background Art
FIG. 8 is a schematic block diagram showing a conventional data flow type information processor, FIGS. 9A and 9B are diagrams showing a structure of a data packet inputted to the information processor shown in FIG. 8, and FIG. 10 is a diagram showing an example of program data stored in a program storing portion 2 shown in FIG. 8.
Referring now to FIGS. 8 to 10, description is made of a structure and a schematic operation of the conventional data flow type information processor. The information processor comprises a merge portion 1, a program storing portion 2, a paired data detecting portion 3, an operation processing portion 4, a branch portion 5 and a data memory 6. An inputted data packet as shown in FIGS. 9A and 9B or a data packet inputted from the data memory 6 is applied to the merge portion 1.
This inputted data packet comprises a head packet (h) and a tail packet (t). As shown in FIG. 9A, the head packet (h) comprises a field of a bit e for determining whether ordinary execution processing is performed or a program is loaded/dumped, a destination field for selecting a processing portion in which processing is to be performed, an identifier field for identifying data having the same queue address by the paired data detecting portion 3, an instruction field having instruction information stored therein, and a queue field address, together with the identifier, for identifying the destination queue in the paired data detection portion 3. As shown in FIG. 9B, the tail packet (t) comprises a flag field for identifying the result of an operation by the operation processing portion 4, a data 1 field and a data 2 field. The data 1 field or the data 2 field stores operand data.
The merge portion 1 applies either one of inputted data packets to the program storing portion 2. The program storing portion 2 comprises a program memory (not shown). The program memory stores a data flow program comprising destination information and instruction information, as shown in FIG. 10. The program storing portion 2 reads out the destination information and the instruction information from the program memory by addressing based on the destination information in the data packet, stores the information in each destination field and the instruction field in the data packet; and outputs the data packet.
The paired data detecting portion 3 queues data packets each having operand data inputted from the program storing portion 2, stores the operand data in one data packet out of the two data packets having the same destination information of a data field in the other data packet, and outputs the other data packet. On this occasion, the above described one data packet disappears. The operation processing portion 4 decodes the instruction information in the other data packet inputted from the paired data detecting portion 3, performs predetermined operation processing with respect to the two operand data included in the other data packet, stores the result of processing in the data field in the other data packet, and outputs the data packet to the branch portion 5.
The branch portion 5 outputs the data packet to the exterior or the data memory 6 based on the destination information in the data packet. The data packet outputted from the data memory 6 is applied to the merge portion 1. The merge portion 1 applies the data packet inputted from the exterior or the data packet applied from the data memory 6 to the program storing portion 2 in the order of arrival.
In the data flow type information processor shown in FIG. 8, the data packet continues to circulate through the merge portion 1, the program storing portion 2, the paired data detecting portion 3, the operation processing portion 4, the branch portion 5 and the data memory 6, so that operation processing based on the program stored in the program storing portion 2 is performed.
Meanwhile, when data is dumped/loaded from/into the program memory included in the program storing portion 2, the data packet is applied to the program storing portion 2 from the exterior through the merge portion 1. The program storing portion 2 determines whether or not a bit e for determining whether ordinary execution processing is performed or a program is loaded/dumped as shown in FIG. 9A is set in the inputted data packet. If the bit e is set, the program memory is directly accessed, whereby the data flow program is loaded and dumped into and from the program memory. If the bit e is not set, ordinary execution processing is performed. Thus, the bit e must be provided in the inputted data packet in order to determine whether the data is loaded/dumped into/from the program memory or the ordinary execution processing is performed, so that the number of bits in the inputted data packet is increased.